The number of mobile computing device applications which require access to the internet is increasing. Internet access is typically provided through a cellular network such as, but not limited to, a 3G or a 4G network, or through a WiFi connection. However, not all network carriers providing cellular service to mobile computing devices include unlimited data access, and not all WiFi connections are free and such WiFi connections may be difficult to find. For example, some network carriers may place a monthly data use cap on a device, while some network plans may comprise a prepaid plan—i.e., 200 MB for $35.
Many current mobile computing device applications are agnostic to which network the application may use, or which application features may be implemented across certain networks. Such applications simply choose whatever network interface is available and use the interface without concern for the amount of bandwidth or other network use metric the application is using on the network. Furthermore, users are not provided with easily-accessible mechanisms to determine the bandwidth used by each application and application features. Users may be unaware that an application may be using network resources without any instruction to do so from the user—i.e., in the background of the mobile computing device.